iT邦幫忙

2025 iThome 鐵人賽

DAY 5
0
生成式 AI

GenAI 與人機協作下的遺留系統重構實戰|以占星軟體 Moira 為例系列 第 5

Day 05|專案開發框架優化與重大效率突破

  • 分享至 

  • xImage
  •  

進入第 5 天的開發,Moira 專案進入從「功能導向」轉向「效率導向」的關鍵節奏點。我們聚焦於三個工程瓶頸進行根本性重構,並同步優化開發工具鏈與測試框架,顯著提升開發體驗與維運效率。


🎯 核心問題解決與重構成果

✅ 測試案例散亂分布 → 結構化管理

  • 建立標準化測試結構:tests/{unit,integration,debug,fixtures}/
  • 所有 test_*.pydebug_*.py 統一重新分類與安置
  • 設計「張小明標準案例」作為穩定驗證基準
  • 制定測試檔案命名與維護規範

✅ Docker 服務名稱混淆 → 智能化工具支援

  • 實作 scripts/docker-reference.sh 智能腳本
  • 自動補全與名稱檢查,避免錯誤調用
  • 視覺化服務架構提示
  • 一鍵呼叫測試命令與診斷指令

✅ API 調用混亂 → 文件+自動化測試支援

  • 建立 docs/api_reference.md 文檔,清晰分層
  • 每個 API 皆配對 CLI 測試指令,自動化回報結果
  • 區分 Django 與 FastAPI 層邏輯與端點模式
  • 提供錯誤排除指南與預設測試資料

🚀 技術突破與演算法驗證

1️⃣ 時間精度修正系統建構完成

  • 理論與實測驗證 486.26 分鐘修正量
  • 正確應用台北經度 + UTC 時差於 Swiss Ephemeris 計算流程
  • 驗證結果:張小明月亮從摩羯轉至水瓶,修正顯著 ✅

2️⃣ FastAPI 完整星盤計算 API 上線

  • 端點:complete_chart.py,支援時間修正與模式選擇
  • 參數設計:支援 time_mode, timezone_name, dst_adjust, switch_day_at_11pm
  • 響應格式標準化,適配前端系統解析需求

3️⃣ 開發工具鏈強化

# 服務管理
./scripts/docker-reference.sh status
./scripts/docker-reference.sh health

# API 測試
./scripts/docker-reference.sh api fastapi-health
./scripts/docker-reference.sh zhang

# 開發支援
./scripts/docker-reference.sh shell
./scripts/docker-reference.sh test tests/integration/

上一篇
Day 04|深入分析與技術文檔建立
下一篇
Day 06|AI治理框架導入:穩定性分級管理與開發風險防控
系列文
GenAI 與人機協作下的遺留系統重構實戰|以占星軟體 Moira 為例7
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言